package org.mozhu.zufang.wechat;

import org.mozhu.mboot.core.config.EnableApplicationConfiguration;
import org.mozhu.mboot.core.data.support.SimpleBaseRepositoryFactoryBean;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.data.rest.RepositoryRestMvcAutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.transaction.annotation.EnableTransactionManagement;

@ComponentScan
@ServletComponentScan
@SpringBootApplication
@EnableAutoConfiguration(exclude = {RepositoryRestMvcAutoConfiguration.class})
@EnableConfigurationProperties
@EnableApplicationConfiguration
@EnableTransactionManagement
@EnableJpaRepositories(repositoryFactoryBeanClass = SimpleBaseRepositoryFactoryBean.class)
@EnableJpaAuditing(dateTimeProviderRef = "dateTimeProvider")
public class DefaultApplication {

    public static void main(String[] args) {
        SpringApplication.run(DefaultApplication.class, args);
    }
}
